package org.dromara.app.domain.vo;

import org.dromara.app.domain.SkYueDanOrder;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.app.domain.SkYueDanOrderLog;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;


/**
 * 约单订单视图对象 sk_yue_dan_order
 *
 * @author Evacuation
 * @date 2024-07-23
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = SkYueDanOrder.class)
public class SkYueDanOrderVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * ID
     */
    @ExcelProperty(value = "ID")
    private Long id;

    /**
     * 项目
     */
    @ExcelProperty(value = "项目")
    private String title;

    /**
     * 价格
     */
    @ExcelProperty(value = "价格")
    private Long price;

    /**
     * 时长
     */
    @ExcelProperty(value = "时长")
    private String longTime;

    /**
     * 开始时间
     */
    @ExcelProperty(value = "开始时间")
    private String startTime;

    /**
     * 地址
     */
    @ExcelProperty(value = "地址")
    private String address;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    private String notes;

    /**
     * 支付方式
     */
    @ExcelProperty(value = "支付方式")
    private Long payType;

    /**
     * 创建时间
     */
    @ExcelProperty(value = "创建时间")
    private Date createTime;

    /**
     * 下单用户
     */
    @ExcelProperty(value = "下单用户")
    private Long userId;

    /**
     * 达人用户
     */
    @ExcelProperty(value = "达人用户")
    private Long darenUserId;

    /**
     * 订单号
     */
    @ExcelProperty(value = "订单号")
    private String orderSn;

    /**
     * 陪玩类型
     */
    @ExcelProperty(value = "陪玩类型")
    private String typeTitle;

    /**
     * 支付状态
     */
    private Long payState;

    /**
     * 支付时间
     */
    private String payTime;

    /**
     * 支付三方订单
     */
    private String payOrder;

    /**
     * 状态 0:未支付  1：待接单  2：已接单 3：已取消 4：已完成
     */
    private Long state;

    /**
     * 经度
     */
    private String longitude;

    /**
     * 纬度
     */
    private String latitude;

    /**
     * 城市
     */
    private String city;

    /**
     * 价格类型
     */
    private String priceType;

    /**
     * 总价
     */
    private BigDecimal allPrice;

    /**
     * 标题
     */
    private String darenTitle;

    /**
     * 接单用户
     */
    private String jiedanUserIds;

    /**
     * 折扣
     */
    private BigDecimal zhekou;

    /**
     * 打折之后的单价
     */
    private BigDecimal zhekouMoney;

    /**
     * 支付的金额
     */
    private BigDecimal payPrice;

    private List<SkYueDanOrderLogVo> list;

    private SkAppUserVo userVo;

    private SkAppUserVo drUserVo;

    /**
     * 退款金额
     */
    private BigDecimal refundPrice;

    /**
     * 退款三方单号
     */
    private String refundOtherOrder;

    /**
     * 扣除比例
     */
    private String refundProportion;

}
